package persistence.transferPOJOs.produkte;

import java.sql.Date;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import persistence.dataAccessObjects.interfaces.IRating;



public abstract class Produkt implements IRating, java.io.Serializable 
{	
	protected int id;
	protected String bezeichnung;
	protected String beschreibung;
	protected String hersteller;
	protected Date herstellungsdatum;
	protected String imgURL;
	protected String anbieter;
	protected ProductType type;
	protected float rating;
		
    public Produkt()
    {}
	
	public Produkt(int id, String bezeichnung, String beschreibung,
			String hersteller, Date herstellungsdatum, String imgURL, String anbieter,
			float rating) 
	{	
		super();
		
		this.id 				= id;
		this.bezeichnung 		= bezeichnung;
		this.beschreibung 		= beschreibung;
		this.hersteller 		= hersteller;
		this.herstellungsdatum 	= herstellungsdatum;
		this.anbieter			= anbieter;
		this.type 				= ProductType.UNDEFINED;
		this.imgURL				= imgURL;
		this.rating				= rating;
	}

	

	public ProductType getType() {
		return type;
	}
	
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getBezeichnung() {
		return bezeichnung;
	}

	public void setBezeichnung(String bezeichnung) {
		this.bezeichnung = bezeichnung;
	}

	public String getBeschreibung() {
		return beschreibung;
	}

	public void setBeschreibung(String beschreibung) {
		this.beschreibung = beschreibung;
	}

	public String getHersteller() {
		return hersteller;
	}

	public void setHersteller(String hersteller) {
		this.hersteller = hersteller;
	}

	public Date getHerstellungsdatum() {
		return herstellungsdatum;
	}

	public void setHerstellungsdatum(Date herstellungsdatum) {
		this.herstellungsdatum = herstellungsdatum;
	}

	
	public String getAnbieter() {
		return anbieter;
	}

	public void setAnbieter(String anbieter) {
		this.anbieter = anbieter;
	}

	public void setType(ProductType type) {
		this.type = type;
	}
	
	public String getImgURL() {
		return imgURL;
	}

	public void setImgURL(String imgURL) {
		this.imgURL = imgURL;
	}

	@Override
	public String toString() {
		return "Produkt [id=" + id + ", bezeichnung=" + bezeichnung
				+ ", beschreibung=" + beschreibung + ", hersteller="
				+ hersteller + ", herstellungsdatum=" + herstellungsdatum
				+ ", imgURL=" + imgURL + ", anbieter =" + anbieter + ", type=" + type + "]";
	}
}